Numerous data encryption methods have already been proposed in which the data to be encrypted (which will be referred to as the input data) is processed by an electronic data processor, or computer, which executes an encryption algorithm utilising an encryption key. Decryption of the encrypted data may be achieved by processing the encrypted data by the same or a different electronic data processor or computer which executes a decryption algorithm that may utilise the same key as used for encryption. The security of the encrypted data is dependent upon both the nature of the algorithms and the keys and the level of security applied to the storage of them.
With a view to providing a secure encryption key, it has been proposed to derive the key from a fingerprint template of an individual. The process involves electronically scanning a finger to derive raw data representing the fingerprint, processing the raw data to derive a fingerprint template, which (as is known) is based upon the minutiae of the fingerprint, processing the fingerprint template to derive an encryption key and processing the input data as described above utilising the encryption key derived from the fingerprint template. After the input data has been encrypted, the encryption key is discarded i.e. not stored so that it is difficult or impossible to decrypt the encrypted data without regenerating the encryption key. Decryption of the data thus requires re-generation of the encryption key by again scanning the same finger to derive a fingerprint template from it and processing the fingerprint template in the same manner as previously to obtain a re-generated encryption key.
A problem with this proposal is that, when the finger is re-scanned, the raw fingerprint data obtained will differ slightly from that obtained in any previous scan. This is because it is almost impossible to ensure that the finger is applied to the scanner with the same pressure each time or in precisely the same position, or it may be that the skin of the finger suffers damage from time to time so that sometimes when the finger is scanned there will be no damage and at other times there will be damage, and of course the damage, if any, may be different each time the fingerprint is scanned. As a consequence, each new fingerprint template obtained will slightly differ from previous ones. To reduce these differences, it is known to scan the finger several times to obtain a corresponding number of templates and then take the average of those to form an averaged fingerprint template. The averaged fingerprint template may then be stored for use in a fingerprint verification process in the future.
In such a future verification process, an averaged fingerprint template would again be obtained and compared with the previously stored averaged fingerprint template. Although, for the reasons explained above, there will still be differences between the averaged fingerprint templates, these differences are not sufficient to negate the verification process. However, those differences make it impossible to produce, from the newly derived fingerprint template, a re-generated encryption key which would be identical to the encryption key derived from the previously obtained averaged fingerprint template.
The present invention addresses this problem.